#!/bin/bash

# 设置要删除的目录路径
directories=(
  "/data/backup" 
)
log_directory="/data/logs/timer/$(date +%Y%m%d)"
log_file="delete_backup_log.log"
mkdir -p $log_directory
touch $log_directory/$log_file

# 计算2天前的时间戳
timestamp=2

for directory in "${directories[@]}"; 
do
  echo "$(date +"%Y-%m-%d %H:%M:%S.%3N") 正在处理目录: $directory" >> $log_directory/$log_file 
  
  # 获取目录下的所有文件和子目录
  files=$(find "$directory" -type f -mtime +${timestamp})
  dirs=$(find "$directory" -type d -mtime +${timestamp})

 
  # 删除所有文件
  echo "$(date +"%Y-%m-%d %H:%M:%S.%3N") 需要删除的文件：${files}" >> $log_directory/$log_file
  find "$directory" -type f -mtime +${timestamp} | xargs rm -rf  >> $log_directory/$log_file

  # 删除所有子目录
  echo "$(date +"%Y-%m-%d %H:%M:%S.%3N") 需要删除的文件夹：${dirs}" >> $log_directory/$log_file
  find "$directory" -type d -mtime +${timestamp} | xargs rm -rf >> $log_directory/$log_file
 
done

